home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / compress / rjcru110.zip / RJCRUSH.DOC < prev    next >
Text File  |  1996-05-05  |  46KB  |  1,198 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.   ██████████████▄▄▀███████▀▄▄██▄▄                ████               ███    ███
  21.   ███▀▀▀▀▀▀▀▀▀▀▀███ █████ ███▀▀███               ████               ███    ███
  22.   ███            ███ ███ ███    ▀▀▀              ████               ███    ███
  23.   ███            ███ ███ ███        ▄█████████████████████████████▄ ███    ███
  24.   ███     ▄▄▄▄▄▄███  ███ ███        ▄▄▄▄▄▄    ▄▄▄    ▄▄▄    ▄▄▄▄    ███▄▄▄▄███
  25.   ███  ▄████████▀▀   ███ ███        ███▀▀██▄  ███    ███ ▄███▀▀███▄ ██████████
  26.   ███ ▄██▀           ███ ███        ███   ███ ███    ███ ▀██▄       ███    ███
  27.   ███ ███            ███ ███        ███▄▄██▀  ███    ███   ▀▀██▄▄   ███    ███
  28.   ███ ▀██▄          ▄██▀ ▀██▄  ▄██▀ ███▀▀██▄  ███    ███       ▀██▄ ███    ███
  29.   ███  ▀██████████████▀   ▀██████▀  ███   ███ ▀███▄▄███▀ ▀███▄▄███▀ ███    ███
  30.   ▀▀▀     ▀▀▀▀▀▀▀▀▀▀         ▀▀     ▀▀▀   ▀▀▀    ▀▀▀▀       ▀▀▀▀    ▀▀▀    ▀▀▀
  31.  
  32.                                   Version 1.10
  33.  
  34.  
  35.  
  36.                                        by
  37.  
  38.                                  Roland Skinner
  39.  
  40.                             Copyright (c) 1994, 1996
  41.  
  42.                                   RJS Software
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.           TABLE OF CONTENTS
  67.  
  68.           1. INTRODUCTION............................................2
  69.               1.1 What is RJCRUSH?...................................2
  70.               1.2 What's New in RJCRUSH?.............................3
  71.               1.3 RJCRUSH in a Windows World.........................4
  72.               1.4 How to Use This Manual.............................4
  73.  
  74.           2. REQUIREMENTS AND INSTALLATION...........................6
  75.               2.1 System Requirements................................6
  76.               2.2 Installing RJCRUSH.................................6
  77.               2.3 Environment Variables..............................6
  78.  
  79.           3. COMPRESSING EXECUTABLES.................................8
  80.               3.1 RJCRUSH with No Parameters.........................8
  81.               3.2 Specifying Executable to Compress..................8
  82.               3.3 Verbose Output.....................................8
  83.               3.4 Disable Backup File Creation.......................9
  84.  
  85.           4. COMPRESSING OVERLAYS...................................10
  86.               4.1 Making your Programs Aware of Compressed Overlays.10
  87.                   4.1.1 Changes Required to Program Source Code.....10
  88.                       4.1.1.1 Changes to the Uses-Clause............11
  89.                       4.1.1.2 Changes to the Overlay-Initialisation
  90.                               Code..................................11
  91.                   4.1.2 Making a MAP-File Available.................12
  92.               4.2 Speed Issues......................................13
  93.  
  94.           5. COMPATIBILITY PROBLEMS.................................14
  95.               5.1 Problems with other Overlay Enhancements..........14
  96.               5.2 Problems with Particular Executables..............14
  97.  
  98.           6. ACKNOWLEDGEMENTS.......................................15
  99.  
  100.           7. REGISTRATION AND CORRESPONDENCE........................16
  101.               7.1 RJCRUSH is Shareware..............................16
  102.               7.2 DISCLAIMER........................................17
  103.               7.3 Contacting RJS Software and the Author............18
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.                                       1
  126.  
  127.  
  128.  
  129.           _1_._ _I_N_T_R_O_D_U_C_T_I_O_N
  130.  
  131.               Thank you for using RJCRUSH.
  132.  
  133.               This  is the second public release of RJCRUSH.   RJCRUSH
  134.               was  designed and written in 1994.   It had  been  under
  135.               extensive  beta-testing for over a year,  to  ensure  it
  136.               worked,  and that it worked properly,  and  this  fairly
  137.               unique software was finally released in October of 1995.
  138.  
  139.               RJCRUSH  is the result of a number of years of  dabbling
  140.               with  data-compression,  and  the  need   for   a   good
  141.               executable  program compressor.   Having played  with  a
  142.               number of the currently available executable compression
  143.               packages,  the conclusion was drawn that  something  was
  144.               lacking  in all of them:  they  lacked  the  ability  to
  145.               handle overlays.
  146.  
  147.               Sure,  the documentation that comes with many executable
  148.               compressors  often  purports  that   these   compressors
  149.               support  overlays, but what this usually means  is  that
  150.               that  particular  software  detects  that  there  is  an
  151.               overlay in an executable,  and will not compress it.  In
  152.               fact,  it  is  doubtful  that  any  previous  executable
  153.               compressors   compressed   the   overlays    of    one's
  154.               executables.   There  is  software  available,  such  as
  155.               Microsoft's  DriveSpace   and   Stac's   Stacker,   that
  156.               compresses everything on a particular drive, but nothing
  157.               that  creates a "contained"  unit  that  is  compressed,
  158.               irrespective of whether the drive it is installed on  is
  159.               compressed  or not.   Now  there  is  such  a  piece  of
  160.               software; it's called RJCRUSH.
  161.  
  162.  
  163.           _1_._1_ _W_h_a_t_ _i_s_ _R_J_C_R_U_S_H_?
  164.  
  165.               RJCRUSH is an executable compressor with the ability  to
  166.               compress  overlays. RJCRUSH only supports EXE-files;  it
  167.               is  the author's opinion that EXE-files are superior  to
  168.               COM-files.  The ability to compress overlays is aimed at
  169.               the developer-level. Without having the source code to a
  170.               program,  an attempt to  make  it  aware  of  compressed
  171.               overlays would be futile.
  172.  
  173.               RJCRUSH  supports the VROOMM overlay engine  of  Borland
  174.               International.   Currently, only the Turbo  and  Borland
  175.               Pascal compilers are supported; versions 5.5 through 7.0
  176.               are  supported. Once the overlay engine of  Borland  C++
  177.               has been investigated,  and the correct point from where
  178.               to  patch in to the engine has been identified,  RJCRUSH
  179.               will support that compiler.   (At this point in time the
  180.               author  has very little time for such an endeavour,  due
  181.               to time constraints imposed by his MSc research.  If the
  182.               need  arises, and is large enough,  this will  become  a
  183.               priority.)
  184.  
  185.  
  186.  
  187.  
  188.                                       2
  189.  
  190.  
  191.  
  192.               Even though RJCRUSH is primarily aimed at the developer,
  193.               users may also benefit by using RJCRUSH.   Compared with
  194.               the   end-results   of   many    competing    executable
  195.               compressors,  RJCRUSH often creates smaller executables.
  196.               RJCRUSH  is based on an LZ77 compression  technique  and
  197.               utilises a superior two-pass executable relocation table
  198.               compression  technique.   This  technique  involves   an
  199.               initial  transformation of the relocation table  into  a
  200.               form  that  is  more  suitable  to  compression  by  the
  201.               LZ77-based compression algorithm.  The end-result is far
  202.               smaller  executables - often by as much  as  a  few  100
  203.               bytes.
  204.  
  205.               The  overlay compression algorithm is  similar  to  that
  206.               used  for executables,  except that  it  performs  extra
  207.               checks to ensure safe decompression during the  run-time
  208.               of the application.
  209.  
  210.               One  reason for the development of RJCRUSH was  to  give
  211.               authors - especially those who market their software  in
  212.               the  form of shareware -  the  ability  to  place  their
  213.               special  integrity checking in  overlaid  code.   Often,
  214.               programs  that perform such checks have